namespace DingHeng.TransportationManagement.Entity
{
    using System;
    using System.Collections.Generic;
    using System.ComponentModel.DataAnnotations;
    using System.ComponentModel.DataAnnotations.Schema;
    using System.Data.Entity.Spatial;

    [Table("Vehicle")]
    public partial class Vehicle
    {
        public Vehicle()
        {
            TransportationForms = new HashSet<TransportationForm>();
            VehicleDispatchForms = new HashSet<VehicleDispatchForm>();
            VehicleRegisters = new HashSet<VehicleRegister>();
        }

        public Guid ID { get; set; }

        [StringLength(50)]
        public string LicensePlateNo { get; set; }

        public Guid? OwnerID { get; set; }

        public Guid? Type { get; set; }

        public Guid? DriverID { get; set; }

        [Column(TypeName = "numeric")]
        public decimal? RateLoad { get; set; }

        [StringLength(8)]
        public string CreateBy { get; set; }

        public DateTime? CreateDate { get; set; }

        [StringLength(8)]
        public string UpdateBy { get; set; }

        public DateTime? UpdateDate { get; set; }

        public bool? IsActive { get; set; }

        public virtual Driver Driver { get; set; }

        public virtual ICollection<TransportationForm> TransportationForms { get; set; }

        public virtual VehicleOwner VehicleOwner { get; set; }

        public virtual ICollection<VehicleDispatchForm> VehicleDispatchForms { get; set; }

        public virtual ICollection<VehicleRegister> VehicleRegisters { get; set; }
    }
}
